project(
  plugins_manager
  LANGUAGES CXX
)

set(CMAKE_CXX_STANDARD 17)
find_package(Qt5 COMPONENTS Widgets Core REQUIRED)

add_definitions(-DQLS_PLUGINS_MANAGER_LIBRARY)

set(_srcs
    src/qls_plugins_manager.cpp
    src/qls_interface.cpp
    src/qls_plugins_manager_pool.cpp
)

set(_headers
    include/plugins_manager/qls_plugins_manager.h
    include/plugins_manager/qls_interface.h
    include/plugins_manager/qls_plugins_manager_pool.h
    include/plugins_manager/qls_plugins_manager_global.h
)

add_library(plugins_manager SHARED ${_srcs} ${_headers})
target_link_libraries(plugins_manager PUBLIC
    Qt5::Widgets Qt5::Core ${CMAKE_THREAD_LIBS_INIT}
)
target_link_libraries(plugins_manager PRIVATE
    themes_manager settings
)
target_include_directories(plugins_manager PUBLIC include)
